﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ERP.Domain.Entities
{
    /// <summary>
    /// 单据子表
    /// </summary>
    public class ReceiptItem
    {
        [Key]
        public int ReceiptItemId { get; set; }
        /// <summary>
        /// 表头 ID。
        /// </summary>
        public long HeaderId { get; set; }

        /// <summary>
        /// 商品 ID。
        /// </summary>
        public long MaterialId { get; set; }

        /// <summary>
        /// 商品扩展 ID。
        /// </summary>
        public long MaterialExtendId { get; set; }

        /// <summary>
        /// 商品的计量单位。
        /// </summary>
        public string MaterialUnit { get; set; }

        /// <summary>
        /// 商品的多属性描述。
        /// </summary>
        public string Sku { get; set; }

        /// <summary>
        /// 操作数量。
        /// </summary>
        public decimal OperNumber { get; set; }

        /// <summary>
        /// 基础数量，如 kg、瓶等。
        /// </summary>
        public decimal BasicNumber { get; set; }

        /// <summary>
        /// 单价。
        /// </summary>
        public decimal UnitPrice { get; set; }

        /// <summary>
        /// 含税单价。
        /// </summary>
        public decimal TaxUnitPrice { get; set; }

        /// <summary>
        /// 金额。
        /// </summary>
        public decimal AllPrice { get; set; }

        /// <summary>
        /// 描述信息。
        /// </summary>
        public string Remark { get; set; }

        /// <summary>
        /// 图片路径或名称。
        /// </summary>
        public string Img { get; set; }

        /// <summary>
        /// 运杂费。
        /// </summary>
        public decimal Incidentals { get; set; }

        /// <summary>
        /// 仓库 ID（库存是统计出来的）。
        /// </summary>
        public long DepotId { get; set; }

        /// <summary>
        /// 调拨时，对方仓库 ID。
        /// </summary>
        public long AnotherDepotId { get; set; }

        /// <summary>
        /// 税率。
        /// </summary>
        public decimal TaxRate { get; set; }

        /// <summary>
        /// 税额。
        /// </summary>
        public decimal TaxMoney { get; set; }

        /// <summary>
        /// 价税合计。
        /// </summary>
        public decimal TaxLastMoney { get; set; }

        /// <summary>
        /// 自定义字段 1 - 品名。
        /// </summary>
        public string OtherField1 { get; set; }

        /// <summary>
        /// 自定义字段 2 - 型号。
        /// </summary>
        public string OtherField2 { get; set; }

        /// <summary>
        /// 自定义字段 3 - 制造商。
        /// </summary>
        public string OtherField3 { get; set; }

        /// <summary>
        /// 自定义字段 4。
        /// </summary>
        public string OtherField4 { get; set; }

        /// <summary>
        /// 自定义字段 5。
        /// </summary>
        public string OtherField5 { get; set; }

        /// <summary>
        /// 商品类型。
        /// </summary>
        public string MaterialType { get; set; }

        /// <summary>
        /// 租户 ID。
        /// </summary>
        public long TenantId { get; set; }

        /// <summary>
        /// 删除标记，0 表示未删除，1 表示已删除，默认 0。
        /// </summary>
        public string DeleteFlag { get; set; }
    }
}
